package cn.fl.ref.scmbaseinfo.vo;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import cmm.web.core.framework.vo.BaseVO;

public class ScmBaseInfoVO extends BaseVO {

	private static final long serialVersionUID = -6700917377112328434L;

	/**
	 * 融资方案编号
	 */
	private Long fncScmId;

	/**
	 * 融资方案名称
	 */
	private String fncScmNm;

	/**
	 * 融资机构编号
	 */
	private Long fncInsId;

	/**
	 * 融资授信编号
	 */
	private String crId;

	/**
	 * 融资授信描述
	 */
	private String crDes;

	/**
	 * 融资产品编号
	 */
	private String pdId;


	/**
	 * 融资产品描述
	 */
	private String pdDes;

	/**
	 * 还款类别代码：1. 主动还款 2. 被动还款
	 */
	private Integer repyTp;

	/**
	 * 还款类别描述
	 */
	private String repyTpDes;

	/**
	 * 融资方案状态代码：1. 已保存 2. 评审中 3. 正常 4. 废弃
	 */
	private Integer scmSt;

	/**
	 * 融资方案状态描述
	 */
	private String scmDes;

	/**
	 * 融资方案开始时间
	 */
	private Date stdt;

	/**
	 * 融资方案结束时间
	 */
	private Date eddt;

	/**
	 * 融资期限
	 */
	private Integer fncTrm;

	/**
	 * 融资基数: 1. 设备金额 2. 剩余本金 3. 剩余租金 4. 融资额
	 */
	private Integer fncCrdnlt;

	/**
	 * 融资基数描述
	 */
	private String fncCrdnltDes;

	/**
	 * 创建人编号
	 */
	private String crtPsn;

	/**
	 * 更新人编号
	 */
	private String uptPsn;

	

	/**
	 * 更新时间
	 */
	private Date updTm;

	/**
	 * 是否有效
	 */
	private Integer isValid;

	/**
	 * 是否删除
	 */
	private Integer isDel;

	/**
	 * 备注
	 */
	private String rmrk;

	/**
	 * 调息方式: 1.实时、2.固定、3.次月、4.次年、5.次季
	 */
	private Integer prymMtd;

	/**
	 * 调息方式描述
	 */
	private String prymMtdDes;

	/**
	 * 打折率
	 */
	private BigDecimal dcnRate;

	/**
	 * 保证金比例
	 */
	private BigDecimal mrgnPct;

	/**
	 * 保证金计费基数 1.融资金额 2.项目金额 3.支付表本金 4.支付表利息
	 */
	private Integer mrgnClCrdnlt;

	/**
	 * 保证金计费基数描述
	 */
	private String mrgnClCrdnltDes;

	/**
	 * mrgnUseMtd保证金使用方式 1.到期退回 2.到期冲抵 3.剩余本金
	 */
	private Integer mrgnUseMtd;

	/**
	 * mrgnUseMtd保证金使用方式描述
	 */
	private String mrgnUseMtdDes;

	/**
	 * 利率基准
	 */
	private BigDecimal irtBs;

	/**
	 * 基准上浮比率
	 */
	private BigDecimal bsFlotupRto;

	/**
	 * 融资利率合计
	 */
	private BigDecimal fncIntrtTot;

	/**
	 * IRR
	 */
	private String irr;

	/**
	 * 是否存在汇率风险
	 */
	private Integer exstExrtRsk;

	/**
	 * 是否存在利率风险
	 */
	private Integer exstIntrtRsk;

	/**
	 * 汇率风险承包方
	 */
	private String exrtRskCntr;

	/**
	 * 利率风险承包方
	 */
	private String intrtRskCntr;

	/**
	 * 是否承作汇率掉期
	 */
	private Integer cmtExrtSwp;

	/**
	 * 是否承作利率掉期
	 */
	private Integer cmtIntrtSwp;

	/**
	 * 汇率掉期银行
	 */
	private String exrtSwpBnk;

	/**
	 * 利率掉期银行
	 */
	private String intrtSwpBnk;

	/**
	 * 汇率掉期费率
	 */
	private BigDecimal exrtSwpFeert;

	/**
	 * 利率掉期费率
	 */
	private BigDecimal intrtSwpFeert;
	
	/**
	 * 保证金是否计入首付款
	 */
	private Integer mrgnWthrInPay;
	
	/**
	 * 首付款是否坐扣
	 */
	private Integer wthrFstPay;
	
	/**
	 * 利率是否浮动
	 */
	private Integer irtTpcd;
	
	/**
	 * 是否支持境外
	 */
	private Integer wthrSupAbr;
	
	/**
	 * 业务类型
	 */
	private String busType;
	
	/**
	 * 报价利率
	 */
	private BigDecimal scmIntrt;
	
	/**
	 * 利率浮动方式代码 1. 无 2.加  3.乘
	 */
	private Integer intrtMtdcd;
	/**
	 * 是否担保 1. 是 2.否
	 */
	private Long isGuarantee;
	/**
	 * 担保主体
	 */
	private String guaranteeBody;
	/**
	 * 担保开始日期
	 */
	private String guaranteeStart;
	/**
	 * 担保结束日期
	 */
	private String guaranteeEnd;
	/**
	 * 担保主体备注
	 */
	private String guaranteeRemark;
	

	private List<ScmChrgParaVO> chrgList;

	public Integer getPrymMtd() {
		return prymMtd;
	}

	public void setPrymMtd(Integer prymMtd) {
		this.prymMtd = prymMtd;
	}

	public Long getFncScmId() {
		return fncScmId;
	}

	public void setFncScmId(Long fncScmId) {
		this.fncScmId = fncScmId;
	}

	public String getFncScmNm() {
		return fncScmNm;
	}

	public void setFncScmNm(String fncScmNm) {
		this.fncScmNm = fncScmNm;
	}

	public Long getFncInsId() {
		return fncInsId;
	}

	public void setFncInsId(Long fncInsId) {
		this.fncInsId = fncInsId;
	}

	public String getCrId() {
		return crId;
	}

	public void setCrId(String crId) {
		this.crId = crId;
	}

	public String getPdId() {
		return pdId;
	}

	public void setPdId(String pdId) {
		this.pdId = pdId;
	}

	public Integer getRepyTp() {
		return repyTp;
	}

	public void setRepyTp(Integer repyTp) {
		this.repyTp = repyTp;
	}

	public Integer getScmSt() {
		return scmSt;
	}

	public void setScmSt(Integer scmSt) {
		this.scmSt = scmSt;
	}

	public Date getStdt() {
		return stdt;
	}

	public void setStdt(Date stdt) {
		this.stdt = stdt;
	}

	public Date getEddt() {
		return eddt;
	}

	public void setEddt(Date eddt) {
		this.eddt = eddt;
	}

	public Integer getFncTrm() {
		return fncTrm;
	}

	public void setFncTrm(Integer fncTrm) {
		this.fncTrm = fncTrm;
	}

	public Integer getFncCrdnlt() {
		return fncCrdnlt;
	}

	public void setFncCrdnlt(Integer fncCrdnlt) {
		this.fncCrdnlt = fncCrdnlt;
	}

	public String getCrtPsn() {
		return crtPsn;
	}

	public void setCrtPsn(String crtPsn) {
		this.crtPsn = crtPsn;
	}

	public String getUptPsn() {
		return uptPsn;
	}

	public void setUptPsn(String uptPsn) {
		this.uptPsn = uptPsn;
	}

	

	public Date getUpdTm() {
		return updTm;
	}

	public void setUpdTm(Date updTm) {
		this.updTm = updTm;
	}

	public Integer getIsValid() {
		return isValid;
	}

	public void setIsValid(Integer isValid) {
		this.isValid = isValid;
	}

	public Integer getIsDel() {
		return isDel;
	}

	public void setIsDel(Integer isDel) {
		this.isDel = isDel;
	}

	public String getRmrk() {
		return rmrk;
	}

	public void setRmrk(String rmrk) {
		this.rmrk = rmrk;
	}

	public BigDecimal getDcnRate() {
		return dcnRate;
	}

	public void setDcnRate(BigDecimal dcnRate) {
		this.dcnRate = dcnRate;
	}

	public BigDecimal getMrgnPct() {
		return mrgnPct;
	}

	public void setMrgnPct(BigDecimal mrgnPct) {
		this.mrgnPct = mrgnPct;
	}

	public Integer getMrgnClCrdnlt() {
		return mrgnClCrdnlt;
	}

	public void setMrgnClCrdnlt(Integer mrgnClCrdnlt) {
		this.mrgnClCrdnlt = mrgnClCrdnlt;
	}

	public Integer getMrgnUseMtd() {
		return mrgnUseMtd;
	}

	public void setMrgnUseMtd(Integer mrgnUseMtd) {
		this.mrgnUseMtd = mrgnUseMtd;
	}

	public BigDecimal getIrtBs() {
		return irtBs;
	}

	public void setIrtBs(BigDecimal irtBs) {
		this.irtBs = irtBs;
	}

	public BigDecimal getBsFlotupRto() {
		return bsFlotupRto;
	}

	public void setBsFlotupRto(BigDecimal bsFlotupRto) {
		this.bsFlotupRto = bsFlotupRto;
	}

	public BigDecimal getFncIntrtTot() {
		return fncIntrtTot;
	}

	public void setFncIntrtTot(BigDecimal fncIntrtTot) {
		this.fncIntrtTot = fncIntrtTot;
	}

	public String getIrr() {
		return irr;
	}

	public void setIrr(String irr) {
		this.irr = irr;
	}

	public Integer getExstExrtRsk() {
		return exstExrtRsk;
	}

	public void setExstExrtRsk(Integer exstExrtRsk) {
		this.exstExrtRsk = exstExrtRsk;
	}

	public Integer getExstIntrtRsk() {
		return exstIntrtRsk;
	}

	public void setExstIntrtRsk(Integer exstIntrtRsk) {
		this.exstIntrtRsk = exstIntrtRsk;
	}

	public String getExrtRskCntr() {
		return exrtRskCntr;
	}

	public void setExrtRskCntr(String exrtRskCntr) {
		this.exrtRskCntr = exrtRskCntr;
	}

	public String getIntrtRskCntr() {
		return intrtRskCntr;
	}

	public void setIntrtRskCntr(String intrtRskCntr) {
		this.intrtRskCntr = intrtRskCntr;
	}

	public Integer getCmtExrtSwp() {
		return cmtExrtSwp;
	}

	public void setCmtExrtSwp(Integer cmtExrtSwp) {
		this.cmtExrtSwp = cmtExrtSwp;
	}

	public Integer getCmtIntrtSwp() {
		return cmtIntrtSwp;
	}

	public void setCmtIntrtSwp(Integer cmtIntrtSwp) {
		this.cmtIntrtSwp = cmtIntrtSwp;
	}

	public String getExrtSwpBnk() {
		return exrtSwpBnk;
	}

	public void setExrtSwpBnk(String exrtSwpBnk) {
		this.exrtSwpBnk = exrtSwpBnk;
	}

	public String getIntrtSwpBnk() {
		return intrtSwpBnk;
	}

	public void setIntrtSwpBnk(String intrtSwpBnk) {
		this.intrtSwpBnk = intrtSwpBnk;
	}

	public BigDecimal getExrtSwpFeert() {
		return exrtSwpFeert;
	}

	public void setExrtSwpFeert(BigDecimal exrtSwpFeert) {
		this.exrtSwpFeert = exrtSwpFeert;
	}

	public BigDecimal getIntrtSwpFeert() {
		return intrtSwpFeert;
	}

	public void setIntrtSwpFeert(BigDecimal intrtSwpFeert) {
		this.intrtSwpFeert = intrtSwpFeert;
	}

	public List<ScmChrgParaVO> getChrgList() {
		return chrgList;
	}

	public void setChrgList(List<ScmChrgParaVO> chrgList) {
		this.chrgList = chrgList;
	}

	public Integer getMrgnWthrInPay() {
		return mrgnWthrInPay;
	}

	public void setMrgnWthrInPay(Integer mrgnWthrInPay) {
		this.mrgnWthrInPay = mrgnWthrInPay;
	}

	public Integer getWthrFstPay() {
		return wthrFstPay;
	}

	public void setWthrFstPay(Integer wthrFstPay) {
		this.wthrFstPay = wthrFstPay;
	}

	public Integer getIrtTpcd() {
		return irtTpcd;
	}

	public void setIrtTpcd(Integer irtTpcd) {
		this.irtTpcd = irtTpcd;
	}

	public String getCrDes() {
		return crDes;
	}

	public void setCrDes(String crDes) {
		this.crDes = crDes;
	}

	public String getPdDes() {
		return pdDes;
	}

	public void setPdDes(String pdDes) {
		this.pdDes = pdDes;
	}

	public String getRepyTpDes() {
		return repyTpDes;
	}

	public void setRepyTpDes(String repyTpDes) {
		this.repyTpDes = repyTpDes;
	}

	public String getScmDes() {
		return scmDes;
	}

	public void setScmDes(String scmDes) {
		this.scmDes = scmDes;
	}

	public String getFncCrdnltDes() {
		return fncCrdnltDes;
	}

	public void setFncCrdnltDes(String fncCrdnltDes) {
		this.fncCrdnltDes = fncCrdnltDes;
	}

	public String getPrymMtdDes() {
		return prymMtdDes;
	}

	public void setPrymMtdDes(String prymMtdDes) {
		this.prymMtdDes = prymMtdDes;
	}

	public String getMrgnClCrdnltDes() {
		return mrgnClCrdnltDes;
	}

	public void setMrgnClCrdnltDes(String mrgnClCrdnltDes) {
		this.mrgnClCrdnltDes = mrgnClCrdnltDes;
	}

	public String getMrgnUseMtdDes() {
		return mrgnUseMtdDes;
	}

	public void setMrgnUseMtdDes(String mrgnUseMtdDes) {
		this.mrgnUseMtdDes = mrgnUseMtdDes;
	}

	public Integer getWthrSupAbr() {
		return wthrSupAbr;
	}

	public void setWthrSupAbr(Integer wthrSupAbr) {
		this.wthrSupAbr = wthrSupAbr;
	}

	public String getBusType() {
		return busType;
	}

	public void setBusType(String busType) {
		this.busType = busType;
	}

	public BigDecimal getScmIntrt() {
		return scmIntrt;
	}

	public void setScmIntrt(BigDecimal scmIntrt) {
		this.scmIntrt = scmIntrt;
	}

	public Integer getIntrtMtdcd() {
		return intrtMtdcd;
	}

	public void setIntrtMtdcd(Integer intrtMtdcd) {
		this.intrtMtdcd = intrtMtdcd;
	}

	@Override
	public String toString() {
		return "ScmBaseInfoVO [fncScmId=" + fncScmId + ", fncScmNm=" + fncScmNm + ", fncInsId=" + fncInsId + ", crId="
				+ crId + ", crDes=" + crDes + ", pdId=" + pdId + ", pdDes=" + pdDes + ", repyTp=" + repyTp
				+ ", repyTpDes=" + repyTpDes + ", scmSt=" + scmSt + ", scmDes=" + scmDes + ", stdt=" + stdt + ", eddt="
				+ eddt + ", fncTrm=" + fncTrm + ", fncCrdnlt=" + fncCrdnlt + ", fncCrdnltDes=" + fncCrdnltDes
				+ ", crtPsn=" + crtPsn + ", uptPsn=" + uptPsn + ", crtTm=" + getCrtTm()+ ", updTm=" + updTm + ", isValid="
				+ isValid + ", isDel=" + isDel + ", rmrk=" + rmrk + ", prymMtd=" + prymMtd + ", prymMtdDes="
				+ prymMtdDes + ", dcnRate=" + dcnRate + ", mrgnPct=" + mrgnPct + ", mrgnClCrdnlt=" + mrgnClCrdnlt
				+ ", mrgnClCrdnltDes=" + mrgnClCrdnltDes + ", mrgnUseMtd=" + mrgnUseMtd + ", mrgnUseMtdDes="
				+ mrgnUseMtdDes + ", irtBs=" + irtBs + ", bsFlotupRto=" + bsFlotupRto + ", fncIntrtTot=" + fncIntrtTot
				+ ", irr=" + irr + ", exstExrtRsk=" + exstExrtRsk + ", exstIntrtRsk=" + exstIntrtRsk + ", exrtRskCntr="
				+ exrtRskCntr + ", intrtRskCntr=" + intrtRskCntr + ", cmtExrtSwp=" + cmtExrtSwp + ", cmtIntrtSwp="
				+ cmtIntrtSwp + ", exrtSwpBnk=" + exrtSwpBnk + ", intrtSwpBnk=" + intrtSwpBnk + ", exrtSwpFeert="
				+ exrtSwpFeert + ", intrtSwpFeert=" + intrtSwpFeert + ", mrgnWthrInPay=" + mrgnWthrInPay
				+ ", wthrFstPay=" + wthrFstPay + ", irtTpcd=" + irtTpcd + ", wthrSupAbr=" + wthrSupAbr + ", busType="
				+ busType + ", scmIntrt=" + scmIntrt + ", intrtMtdcd=" + intrtMtdcd + ", chrgList=" + chrgList
				+ ", toString()=" + super.toString() + "]";
	}

	public Long getIsGuarantee() {
		return isGuarantee;
	}

	public void setIsGuarantee(Long isGuarantee) {
		this.isGuarantee = isGuarantee;
	}

	

	public String getGuaranteeBody() {
		return guaranteeBody;
	}

	public void setGuaranteeBody(String guaranteeBody) {
		this.guaranteeBody = guaranteeBody;
	}

	public String getGuaranteeStart() {
		return guaranteeStart;
	}

	public void setGuaranteeStart(String guaranteeStart) {
		this.guaranteeStart = guaranteeStart;
	}

	public String getGuaranteeEnd() {
		return guaranteeEnd;
	}

	public void setGuaranteeEnd(String guaranteeEnd) {
		this.guaranteeEnd = guaranteeEnd;
	}

	public String getGuaranteeRemark() {
		return guaranteeRemark;
	}

	public void setGuaranteeRemark(String guaranteeRemark) {
		this.guaranteeRemark = guaranteeRemark;
	}
	

}
